package com.xjw.web.controller;

import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.validation.BindException;
import org.springframework.validation.Errors;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.AbstractWizardFormController;

import com.xjw.entity.User;

/**      
 * 项目名称：springMvc  
 * 实现功能：  
 * 类名称：InfoFillWizardFormController   
 * 类描述：(该类的主要功能)
 * 创建人：徐纪伟 
 * E-mail: xjw@jysdsoft.com
 * 创建时间：2013-3-21下午04:00:27   
 * 修改人：   
 * 修改时间：   
 * 版权 :京源时代
 * 修改备注：   
 * @version    
 */
@SuppressWarnings("all")
public class InfoFillWizardFormController extends AbstractWizardFormController {

	//构造方法，确定命令对象
	public InfoFillWizardFormController(){
		setCommandClass(User.class);
		setCommandName("user");
		
	}
	

	@Override
	protected void postProcessPage(HttpServletRequest request, Object command,
			Errors errors, int page) throws Exception {
		//提供每一页完成时的处理方法
	}

	@Override
	protected ModelAndView processCancel(HttpServletRequest request,
			HttpServletResponse response, Object command, BindException errors)
			throws Exception {
		//取消后的处理方法
		System.out.println(command);
		return new ModelAndView("redirect:/cancel");
	}

	@Override
	protected Map referenceData(HttpServletRequest request, Object command,
			Errors errors, int page) throws Exception {
		Map map = new HashMap();
		if(page==1) { //如果是填写学校信息页 需要学校类型信息
		map.put("schoolTypeList", Arrays.asList("高中", "中专", "大学"));
		}
		if(page==2) {//如果是填写工作信息页 需要工作城市信息
		map.put("cityList", Arrays.asList("济南", "北京", "上海"));
		}
		return map;
	}

	@Override
	protected void validatePage(Object command, Errors errors, int page) {
		//提供每一页数据的验证处理方法
	}

	@Override
	protected ModelAndView processFinish(HttpServletRequest request,
			HttpServletResponse response, Object command, BindException errors)
			throws Exception {
		//成功后的处理方法
		System.out.println(command);
		return new ModelAndView("redirect:/success");
	}

}
